<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Glowing Corner Hover Effects</title>
  <link rel="stylesheet" href="./index.css">
</head>

<body>
  <!-- 1. 设置 HTML 基本架构： -->
  <div class="container">
    <!-- 细节1：style="--clr:" ->是一种"自定义属性"的用法，用于定义[CSS自定义属性]... -->
    <div class="card" style="--clr: #f00;"></div>
    <div class="card" style="--clr: #0f0;"></div>
    <div class="card" style="--clr: #0fe;"></div>
    <div class="card" style="--clr: #ff0;"></div>
  </div>

  <script>
    // 3. JS交互：
    const cards = document.querySelectorAll('.card');

    cards.forEach(card => {
      card.onmousemove = (event) => {
        // 3.1 获取到当前鼠标 ->在整个文档的坐标：
        const { pageX, pageY } = event;
        
        // 3.2 通过 ->当前鼠标鼠标在整个文档的坐标 减去 当前卡片的offsetLeft
        // →确定, 鼠标相对于 [当前卡片] 的位置...
        const x = pageX - card.offsetLeft,
              y = pageY - card.offsetTop;

        // 详解：".setProperty" ->setProperty 是一个用于设置或修改CSS样式的JavaScript方法...
        // 3.3 通过 setProperty 动态设置 "自定义变量(x、y)" 的值！！！
        // onmousemove: 鼠标经过时触发
        card.style.setProperty('--x', x + 'px');
        card.style.setProperty('--y', y + 'px');
      }
    })
  </script>
</body>

</html>
